Conventional content management systems operate using a general purpose content store for storing information that is output and published in traditional Internet space. Content managers are popular for managing large volumes of data for publication on the Internet. They provide users a consolidated place to manage content coming in from various feeds. Content managers also provide numerous services before publishing the inputted data. Some of these services include versioning and templating. Content manager services also include content management tools that provide users the ability to manage the editorial and publishing process for one or more Internet web sites.
Content management systems differ from document management systems in that content managers tend to repurpose the content stored within its data store. Document management systems typically provide users the ability to perform tasks on entire documents. In such systems, documents are reviewed, approved, and edited, but the document retains its form. Content management systems on the other hand, manage discrete pieces of information that may be placed together to form desired outputs or documents. For example, a user may place multiple pieces of news information together to form a news column that is output to a particular platform. Alternatively, the user may take a subset of that same news information to form a news article for another platform. The same pieces of news information are repurposed and published depending upon the desired output.
Content managers also function to take portions of the information stored within its content store and repurpose that information in a variety of different formats. Data within the content store may be transformed by the content manager to produce extensible mark-up language (XML) versions, hypertext mark-up language (HTML) versions, versions for mobile users utilizing wireless communications devices, as well as an assortment of formats for traditional media. Content managers take heterogeneous pieces of information to produce customized outputs as desired for individual users.
Content managers typically have two broad systems to assist them in performing their tasks. First, content managers include systems to place information and content into their database. Second, they have systems that perform various transformation steps that allow the stored content to be repurposed for various output configurations. Content managers in a global computer network or Internet space frequently produce output based upon information that is stored in their database on a regular basis. These outputs could be uniform, but more frequently vary slightly from one another. As information is changed in the content manager database, one of the content manager's functions is to ensure that the latest information is output or published. Conventional content managers republish entire pages or even larger units of work when a portion of that page needs to be updated on the output platform.
Conventional content manager databases or content stores are generic in nature. That is, the data that is stored in the database must be formatted in such a way so that the data may be used on a variety of different platforms or applications. Traditionally, the content store does not track or know of the various outputs for the data it is storing. Traditional publishing systems within the content manager pull the pieces of information within the database that it wants and then renders that information over the global computer network. As mentioned above, this information is typically reproduced on a regular basis. Further, the same information may be output over a variety of different platforms and networks with each of those platforms requiring the output contain varying pieces of information from the database. The content store is not in a position to recognize all of the possible outputs and all the potential interrelationships between the data it is storing.
Conventional content management systems are structured such that it is prohibitive to incrementally update content on a global computer network. More specifically, the designer of the content store system cannot know in advance what the various formats of data are that are stored in the content store system. Therefore, it is exceedingly difficult for the designer to provide generic services that do dependency analysis or the like. As a consequence, in existing systems, it is very difficult, if not impossible, to build into the system general purpose functionality for republishing data on an as-needed basis. Instead, large units or trees are republished in a somewhat manual fashion. Alternatively, users of a content management system build elaborate dependency analysis systems on top of the content management system which do the updating. As is apparent, this is not very efficient for the user, both in terms of dependent development time and processing time.
Accordingly, there exists a need to update content on a global computer network such that only the content that has changed between the present time period and the previous time period is updated at the output. Moreover, there is a need for such a method and system that allows for surgical updates of the data presented to a user while maintaining the generic nature of the content store. Further, there is a need for a system that utilizes output modules that have domain specific knowledge of its particular output space such that it becomes efficient to update only portions of the content that has changed.